railcards-eapi icon

railcards-eapi

(0 reviews)

Error handling


Whilst every effort will be made to capture all errors which may be returned for these API resources on this page, if you are returned an error not recorded here, please provide details to RDG, including the request which generated the error and the error message itself, and we will investigate and add to this page.


Platform Error Format

The Developer Portal will return an error if submitted requests do not comply with one or more of an API's policies. A common example of this is the security policy, which requires a valid JWT in every request. If the request doesn't include a valid JWT then the Portal will reject the request immediately and make no attempt to process it. Rejected requests of this nature will result in a platform error, which has the following simple format (See Platform Error Object data type):

{
    "error" : "error message"
}

RDG Error format

If a request passes the policy checks it will be submitted to the relevant RDG API which may then result in an RDG specific error as opposed to a generic platform error. APIs on the RDG Developer Portal use the following common error format to contain and return these errors to consumers (See RDG Error Object data type):

{
    "errors": [
    {
        "code": "error_code",
        "message": "error message",
        "timestamp": "YYYY-MM-DDTHH:MM:SS",
        "context":
        {
            "{key}": "value"
        }
    }
    ]
}

The context object is an unspecified list of key value pairs, allowing new context information to be provided without requiring a schema change.
There are currently no context fields added to Railcard Errors.

Known Error Cases

General

CodeMessageComment
GBR-AUTH-2000Security ErrorWhen RDG fails to process request due to client side or server side security failure
GBR-AUTH-2001Unauthorised UserWhen user’s token is invalid
GBR-AUTH-2002Security validation: precondition failed-
GBR-AUTH-2003Security validation: Bad requestWhen request payload has failed to process
GBR_EXCEPTION_0000Unknown ErrorCatch all for any unknown errors
GBR_EXCEPTION_0001Undefined error by 3rd party systemUnknown error from 3rd party APIs
GBR_EXCEPTION_3000Invalid schema/ Invalid payloadBad request due to payload not conforming to the json/xml schema definition
GBR_EXCEPTION_3001Internal ErrorUnable to complete operation
GBR_EXCEPTION_3006Resource not foundWhen API resource request is not found or not defined in the specification
GBR_EXCEPTION_3007Method not allowedWhen API resource request doesn’t conform to the API specfication e.g. method GET is expected for a resource but POST or PUT call is made
GBR_EXCEPTION_3009Unsupported media typeWhen API resource request media type (e.g. application/json) doesn’t conform to the expected media type
GBR_EXCEPTION_3010HTTP too many requestsRate-limit exceeded
GBR_EXCEPTION_3011AWS S3 bad request errorWhen AWS S3 throws error due to processing error of the request
GBR_EXCEPTION_3012Invalid schema/ Invalid payloadBad request due to payload not conforming to the json/xml schema definition
GBR_EXCEPTION_3013Invalid schema/ Invalid payloadBad request due to payload not conforming to the json/xml schema definition
GBR_EXCEPTION_3014Forbidden ErrorWhen source system doesn’t allow access to a particular resource for a specfic client
GBR_EXCEPTION_3015Validation Error [Email is valid]The structural conformation of email is checked and throws error if doesn’t match the built in REGEX pattern
GBR_EXCEPTION_3063Expression errorWhen any form of REGEX failed to excute due to incorrect inputs
GBR_EXCEPTION_3065Retry exhausted, Redelivery ExhaustedRetry component reaches the threshold number with respect to HTTP requests made
GBR_EXCEPTION_3066Connectivity issue or service is not availableWhen cannot reach the resource URL or underneath service doesn’t respond
GBR_EXCEPTION_3067HTTP time outWhen the HTTP request gets timed out

Railcards

CodeMessageComment
GBR_RAILCARDS_6100Requested Railcard type is not supportedThe requested Railcard Type is not stored within the system and cannot be validated
GBR_RAILCARDS_6101Requested Railcard details not validThe necessary validation criteria has not been met
GBR_RAILCARDS_6102Internal error occurred - unable to validate railcardWhilst validating a Railcard there has been an internal error which means the Railcard could not be validated, the Railcard may be valid

Last update: 02-Feb-2023 11.30: ASSIST API Documentation Maintenance: railcards-eapi | Version: v1 | Page: Error handling| Revision: A.

To request updates to this text please contact Neil Barkham.


Reviews